#include "stm32f10x.h"
#include "delay.h"
#include "epd.h"
#include "epd_spi.h"
#include "oled.h"
#include "timer.h"
#include "key.h"
#include "menu.h"
#include "usart.h"

extern const uint8_t bmp[4736];

int main(void)
{
	USART1_Init();
	OLED_Init();
	Timer_Iint();
	Contrl_Init();
	EPD_SPIInit();
	EPD_WhiteScreen();
	Delay(2000);
	OLED_ShowString(0, 0, "OK", OLED_8X16);
	OLED_Update();
	// Delay(2000);
	//	EPD_ShowChar(1, 1, 'A');
	//	Delay(2000);
	//	EPD_ShowString(2, 34, "RUIRUI");
	//	EPD_PartChinese(1, 1, 0);
	//	Delay(2000);

	//	Delay(2000);
	//		EPD_BlackScreen();
	//	Delay(2000);
	//	EPD_ShowBMP(bmp);
	//  Delay(2000);
	//  EPD_16Graytest();
	// EPD_Part_Init();

	 main_menu();

	// EPD_Dis_Part(102, 271, Select, 24, 8);
	// Delay(1000);
	// EPD_Dis_Part(102, 271, Select, 24, 8);

	// Delay(5000);
	// // EPD_WhiteScreen();
	// // EPD_Dis_Part(70, 192, niubia, 96, 32);
	// // Delay(500);
	// 	EPD_WhiteScreen();
	// 	Delay(1000);
	// 	EPD_DeepSleep();
	OLED_ShowString(40, 0, "GO", OLED_8X16);
	OLED_Update();
	menu_operation();

	while (1)
	{
	}
}

void TIM2_IRQHandler(void)
{
	if (TIM_GetITStatus(TIM2, TIM_IT_Update) == SET)
	{
		Key_Tick();
		TIM_ClearITPendingBit(TIM2, TIM_IT_Update);
	}
}
